When creating complex semantic models for a project, there is often a need to reuse the same metadata concepts (objects) in multiple resource artifacts (resources). However, objects are often duplicated in multiple resources without an inheritance mechanism. In addition, in many situations, multiple people may be working on a similar project and sharing work can impact the work of others working on the project. Data for the project is also typically sourced from a particular data source without the ability to span multiple data sources. The inability to reuse the same objects in multiple resources, have changes to a resource dynamically reflected to other semantic models, to share work without impacting others, and to federate data from different data sources into a project is inefficient, resource intensive, and increases the total cost of ownership of using complex semantic models.